-- Network Working Group B. Haberman
-- Request for Comments: 4292 Johns Hopkins University
-- Obsoletes: 2096 April 2006
-- Category: Standards Track-- IP Forwarding Table MIBIP-FORWARD-MIB DEFINITIONS::=BEGINIMPORTS
MODULE-IDENTITY,OBJECT-TYPE,IpAddress,Integer32,Gauge32,Counter32FROM SNMPv2-SMI
RowStatusFROM SNMPv2-TC
MODULE-COMPLIANCE,OBJECT-GROUPFROM SNMPv2-CONF
InterfaceIndexOrZeroFROM IF-MIB
ip FROM IP-MIB
IANAipRouteProtocolFROM IANA-RTPROTO-MIB
InetAddress,InetAddressType,InetAddressPrefixLength,
InetAutonomousSystemNumberFROM INET-ADDRESS-MIB;ipForward MODULE-IDENTITYLAST-UPDATED"200602010000Z"ORGANIZATION"IETF IPv6 Working Group
http://www.ietf.org/html.charters/ipv6-charter.html"CONTACT-INFO"Editor:
Brian Haberman
Johns Hopkins University - Applied Physics Laboratory
Mailstop 17-S442
11100 Johns Hopkins Road
Laurel MD, 20723-6099 USA
Phone: +1-443-778-1319
Email: brian@innovationslab.net
Send comments to <ipv6@ietf.org>"DESCRIPTION"The MIB module for the management of CIDR multipath IP
Routes.
Copyright (C) The Internet Society (2006). This version
of this MIB module is a part of RFC 4292; see the RFC
itself for full legal notices."REVISION"200602010000Z"DESCRIPTION"IPv4/v6 version-independent revision. Minimal changes
were made to the original RFC 2096 MIB to allow easy
upgrade of existing IPv4 implementations to the
version-independent MIB. These changes include:
Adding inetCidrRouteDiscards as a replacement for the
deprecated ipRoutingDiscards and ipv6DiscardedRoutes
objects.
Adding a new conformance statement to support the
implementation of the IP Forwarding MIB in a
read-only mode.
The inetCidrRouteTable replaces the IPv4-specific
ipCidrRouteTable, its related objects, and related
conformance statements.
Published as RFC 4292."REVISION"199609190000Z"DESCRIPTION
"Revised to support CIDR routes.
Published as RFC 2096."REVISION"199207022156Z"DESCRIPTION"Initial version, published as RFC 1354."::={ ip 24}inetCidrRouteNumber OBJECT-TYPESYNTAXGauge32MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The number of current inetCidrRouteTable entries that
are not invalid."::={ ipForward 6}inetCidrRouteDiscards OBJECT-TYPESYNTAXCounter32
MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The number of valid route entries discarded from the
inetCidrRouteTable. Discarded route entries do not
appear in the inetCidrRouteTable. One possible reason
for discarding an entry would be to free-up buffer space
for other route table entries."::={ ipForward 8}-- Inet CIDR Route Table-- The Inet CIDR Route Table deprecates and replaces the-- ipCidrRoute Table currently in the IP Forwarding Table MIB.-- It adds IP protocol independence.inetCidrRouteTable OBJECT-TYPESYNTAXSEQUENCEOF InetCidrRouteEntry
MAX-ACCESSnot-accessible
STATUScurrentDESCRIPTION"This entity's IP Routing table."REFERENCE"RFC 1213 Section 6.6, The IP Group"::={ ipForward 7}inetCidrRouteEntry OBJECT-TYPESYNTAX InetCidrRouteEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"A particular route to a particular destination, under a
particular policy (as reflected in the
inetCidrRoutePolicy object).
Dynamically created rows will survive an agent reboot.
Implementers need to be aware that if the total number
of elements (octets or sub-identifiers) in
inetCidrRouteDest, inetCidrRoutePolicy, and
inetCidrRouteNextHop exceeds 111, then OIDs of column
instances in this table will have more than 128 sub-
identifiers and cannot be accessed using SNMPv1,
SNMPv2c, or SNMPv3."INDEX{
inetCidrRouteDestType,
inetCidrRouteDest,
inetCidrRoutePfxLen,
inetCidrRoutePolicy,
inetCidrRouteNextHopType,
inetCidrRouteNextHop
}::={ inetCidrRouteTable 1}
InetCidrRouteEntry ::=SEQUENCE{
inetCidrRouteDestType InetAddressType,
inetCidrRouteDest InetAddress,
inetCidrRoutePfxLen InetAddressPrefixLength,
inetCidrRoutePolicy OBJECTIDENTIFIER,
inetCidrRouteNextHopType InetAddressType,
inetCidrRouteNextHop InetAddress,
inetCidrRouteIfIndex InterfaceIndexOrZero,
inetCidrRouteType INTEGER,
inetCidrRouteProto IANAipRouteProtocol,
inetCidrRouteAge Gauge32,
inetCidrRouteNextHopAS InetAutonomousSystemNumber,
inetCidrRouteMetric1 Integer32,
inetCidrRouteMetric2 Integer32,
inetCidrRouteMetric3 Integer32,
inetCidrRouteMetric4 Integer32,
inetCidrRouteMetric5 Integer32,
inetCidrRouteStatus RowStatus}inetCidrRouteDestType OBJECT-TYPESYNTAXInetAddressTypeMAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"The type of the inetCidrRouteDest address, as defined
in the InetAddress MIB.
Only those address types that may appear in an actual
routing table are allowed as values of this object."REFERENCE"RFC 4001"::={ inetCidrRouteEntry 1}
inetCidrRouteDest OBJECT-TYPESYNTAXInetAddressMAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"The destination IP address of this route.
The type of this address is determined by the value of
the inetCidrRouteDestType object.
The values for the index objects inetCidrRouteDest and
inetCidrRoutePfxLen must be consistent. When the value
of inetCidrRouteDest (excluding the zone index, if one
is present) is x, then the bitwise logical-AND
of x with the value of the mask formed from the
corresponding index object inetCidrRoutePfxLen MUST be
equal to x. If not, then the index pair is not
consistent and an inconsistentName error must be
returned on SET or CREATE requests."::={ inetCidrRouteEntry 2}inetCidrRoutePfxLen OBJECT-TYPESYNTAXInetAddressPrefixLengthMAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"Indicates the number of leading one bits that form the
mask to be logical-ANDed with the destination address
before being compared to the value in the
inetCidrRouteDest field.
The values for the index objects inetCidrRouteDest and
inetCidrRoutePfxLen must be consistent. When the value
of inetCidrRouteDest (excluding the zone index, if one
is present) is x, then the bitwise logical-AND
of x with the value of the mask formed from the
corresponding index object inetCidrRoutePfxLen MUST be
equal to x. If not, then the index pair is not
consistent and an inconsistentName error must be
returned on SET or CREATE requests."::={ inetCidrRouteEntry 3}inetCidrRoutePolicy OBJECT-TYPESYNTAXOBJECTIDENTIFIERMAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"This object is an opaque object without any defined
semantics. Its purpose is to serve as an additional
index that may delineate between multiple entries to
the same destination. The value { 0 0 } shall be used
as the default value for this object."::={ inetCidrRouteEntry 4}inetCidrRouteNextHopType OBJECT-TYPE
SYNTAXInetAddressTypeMAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"The type of the inetCidrRouteNextHop address, as
defined in the InetAddress MIB.
Value should be set to unknown(0) for non-remote
routes.
Only those address types that may appear in an actual
routing table are allowed as values of this object."REFERENCE"RFC 4001"::={ inetCidrRouteEntry 5}inetCidrRouteNextHop OBJECT-TYPESYNTAXInetAddressMAX-ACCESSnot-accessibleSTATUScurrent
DESCRIPTION"On remote routes, the address of the next system en
route. For non-remote routes, a zero length string.
The type of this address is determined by the value of
the inetCidrRouteNextHopType object."::={ inetCidrRouteEntry 6}inetCidrRouteIfIndex OBJECT-TYPESYNTAXInterfaceIndexOrZeroMAX-ACCESSread-createSTATUScurrentDESCRIPTION"The ifIndex value that identifies the local interface
through which the next hop of this route should be
reached. A value of 0 is valid and represents the
scenario where no interface is specified."::={ inetCidrRouteEntry 7}
inetCidrRouteType OBJECT-TYPESYNTAXINTEGER{other (1),-- not specified by this MIBreject (2),-- route that discards traffic and-- returns ICMP notificationlocal (3),-- local interfaceremote (4),-- remote destinationblackhole(5)-- route that discards traffic
-- silently}MAX-ACCESSread-createSTATUScurrentDESCRIPTION"The type of route. Note that local(3) refers to a
route for which the next hop is the final destination;
remote(4) refers to a route for which the next hop is
not the final destination.
Routes that do not result in traffic forwarding or
rejection should not be displayed, even if the
implementation keeps them stored internally.
reject(2) refers to a route that, if matched, discards
the message as unreachable and returns a notification
(e.g., ICMP error) to the message sender. This is used
in some protocols as a means of correctly aggregating
routes.
blackhole(5) refers to a route that, if matched,
discards the message silently."::={ inetCidrRouteEntry 8}inetCidrRouteProto OBJECT-TYPESYNTAXIANAipRouteProtocolMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The routing mechanism via which this route was learned.
Inclusion of values for gateway routing protocols is
not intended to imply that hosts should support those
protocols."::={ inetCidrRouteEntry 9}inetCidrRouteAge OBJECT-TYPESYNTAXGauge32MAX-ACCESSread-onlySTATUScurrent
DESCRIPTION"The number of seconds since this route was last updated
or otherwise determined to be correct. Note that no
semantics of 'too old' can be implied, except through
knowledge of the routing protocol by which the route
was learned."::={ inetCidrRouteEntry 10}inetCidrRouteNextHopAS OBJECT-TYPESYNTAXInetAutonomousSystemNumberMAX-ACCESSread-createSTATUScurrentDESCRIPTION"The Autonomous System Number of the Next Hop. The
semantics of this object are determined by the routing-
protocol specified in the route's inetCidrRouteProto
value. When this object is unknown or not relevant, its
value should be set to zero."DEFVAL{0}::={ inetCidrRouteEntry 11}inetCidrRouteMetric1 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUScurrentDESCRIPTION"The primary routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's inetCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ inetCidrRouteEntry 12}
inetCidrRouteMetric2 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUScurrentDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's inetCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ inetCidrRouteEntry 13}inetCidrRouteMetric3 OBJECT-TYPESYNTAXInteger32
MAX-ACCESSread-createSTATUScurrentDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's inetCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ inetCidrRouteEntry 14}inetCidrRouteMetric4 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUScurrentDESCRIPTION
"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's inetCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ inetCidrRouteEntry 15}inetCidrRouteMetric5 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUScurrentDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's inetCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ inetCidrRouteEntry 16}inetCidrRouteStatus OBJECT-TYPESYNTAXRowStatusMAX-ACCESSread-createSTATUScurrentDESCRIPTION"The row status variable, used according to row
installation and removal conventions.
A row entry cannot be modified when the status is
marked as active(1)."::={ inetCidrRouteEntry 17}-- Conformance informationipForwardConformance
OBJECTIDENTIFIER::={ ipForward 5}ipForwardGroups
OBJECTIDENTIFIER::={ ipForwardConformance 1}ipForwardCompliances
OBJECTIDENTIFIER::={ ipForwardConformance 2}-- Compliance statementsipForwardFullCompliance MODULE-COMPLIANCESTATUScurrentDESCRIPTION"When this MIB is implemented for read-create, the
implementation can claim full compliance.
There are a number of INDEX objects that cannot be
represented in the form of OBJECT clauses in SMIv2,
but for which there are compliance requirements,
expressed in OBJECT clause form in this description:
-- OBJECT inetCidrRouteDestType
-- SYNTAX InetAddressType (ipv4(1), ipv6(2),
-- ipv4z(3), ipv6z(4))
-- DESCRIPTION
-- This MIB requires support for global and
-- non-global ipv4 and ipv6 addresses.
--
-- OBJECT inetCidrRouteDest
-- SYNTAX InetAddress (SIZE (4 | 8 | 16 | 20))
-- DESCRIPTION
-- This MIB requires support for global and
-- non-global IPv4 and IPv6 addresses.
--
-- OBJECT inetCidrRouteNextHopType
-- SYNTAX InetAddressType (unknown(0), ipv4(1),
-- ipv6(2), ipv4z(3)
-- ipv6z(4))
-- DESCRIPTION
-- This MIB requires support for global and
-- non-global ipv4 and ipv6 addresses.
--
-- OBJECT inetCidrRouteNextHop
-- SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20))
-- DESCRIPTION
-- This MIB requires support for global and
-- non-global IPv4 and IPv6 addresses.
"MODULE-- this moduleMANDATORY-GROUPS{ inetForwardCidrRouteGroup }OBJECT inetCidrRouteStatus
SYNTAXRowStatus{ active(1), notInService (2)}WRITE-SYNTAXRowStatus{ active(1), notInService (2),
createAndGo(4), destroy(6)}DESCRIPTION"Support for createAndWait is not required."::={ ipForwardCompliances 3}ipForwardReadOnlyCompliance MODULE-COMPLIANCESTATUScurrentDESCRIPTION"When this MIB is implemented without support for read-
create (i.e., in read-only mode), the implementation can
claim read-only compliance."MODULE-- this moduleMANDATORY-GROUPS{ inetForwardCidrRouteGroup }OBJECT inetCidrRouteIfIndex
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteType
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteNextHopAS
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteMetric1
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteMetric2
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."
OBJECT inetCidrRouteMetric3
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteMetric4
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteMetric5
MIN-ACCESSread-onlyDESCRIPTION"Write access is not required."OBJECT inetCidrRouteStatus
SYNTAXRowStatus{ active(1)}MIN-ACCESSread-onlyDESCRIPTION
"Write access is not required."::={ ipForwardCompliances 4}-- units of conformanceinetForwardCidrRouteGroup OBJECT-GROUPOBJECTS{ inetCidrRouteDiscards,
inetCidrRouteIfIndex, inetCidrRouteType,
inetCidrRouteProto, inetCidrRouteAge,
inetCidrRouteNextHopAS, inetCidrRouteMetric1,
inetCidrRouteMetric2, inetCidrRouteMetric3,
inetCidrRouteMetric4, inetCidrRouteMetric5,
inetCidrRouteStatus, inetCidrRouteNumber
}STATUScurrent
DESCRIPTION"The IP version-independent CIDR Route Table."::={ ipForwardGroups 4}-- Deprecated ObjectsipCidrRouteNumber OBJECT-TYPESYNTAXGauge32MAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"The number of current ipCidrRouteTable entries that are
not invalid. This object is deprecated in favor of
inetCidrRouteNumber and the inetCidrRouteTable."::={ ipForward 3}-- IP CIDR Route Table-- The IP CIDR Route Table obsoletes and replaces the ipRoute-- Table current in MIB-I and MIB-II and the IP Forwarding Table.
-- It adds knowledge of the autonomous system of the next hop,-- multiple next hops, policy routing, and Classless-- Inter-Domain Routing.ipCidrRouteTable OBJECT-TYPESYNTAXSEQUENCEOF IpCidrRouteEntry
MAX-ACCESSnot-accessibleSTATUSdeprecatedDESCRIPTION"This entity's IP Routing table. This table has been
deprecated in favor of the IP version neutral
inetCidrRouteTable."REFERENCE"RFC 1213 Section 6.6, The IP Group"::={ ipForward 4}ipCidrRouteEntry OBJECT-TYPE
SYNTAX IpCidrRouteEntry
MAX-ACCESSnot-accessibleSTATUSdeprecatedDESCRIPTION"A particular route to a particular destination, under a
particular policy."INDEX{
ipCidrRouteDest,
ipCidrRouteMask,
ipCidrRouteTos,
ipCidrRouteNextHop
}::={ ipCidrRouteTable 1}
IpCidrRouteEntry ::=SEQUENCE{
ipCidrRouteDest IpAddress,
ipCidrRouteMask IpAddress,
ipCidrRouteTos Integer32,
ipCidrRouteNextHop IpAddress,
ipCidrRouteIfIndex Integer32,
ipCidrRouteType INTEGER,
ipCidrRouteProto INTEGER,
ipCidrRouteAge Integer32,
ipCidrRouteInfo OBJECTIDENTIFIER,
ipCidrRouteNextHopAS Integer32,
ipCidrRouteMetric1 Integer32,
ipCidrRouteMetric2 Integer32,
ipCidrRouteMetric3 Integer32,
ipCidrRouteMetric4 Integer32,
ipCidrRouteMetric5 Integer32,
ipCidrRouteStatus RowStatus}ipCidrRouteDest OBJECT-TYPESYNTAXIpAddressMAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"The destination IP address of this route.
This object may not take a Multicast (Class D) address
value.
Any assignment (implicit or otherwise) of an instance
of this object to a value x must be rejected if the
bitwise logical-AND of x with the value of the
corresponding instance of the ipCidrRouteMask object is
not equal to x."::={ ipCidrRouteEntry 1}ipCidrRouteMask OBJECT-TYPESYNTAXIpAddress
MAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"Indicate the mask to be logical-ANDed with the
destination address before being compared to the value
in the ipCidrRouteDest field. For those systems that
do not support arbitrary subnet masks, an agent
constructs the value of the ipCidrRouteMask by
reference to the IP Address Class.
Any assignment (implicit or otherwise) of an instance
of this object to a value x must be rejected if the
bitwise logical-AND of x with the value of the
corresponding instance of the ipCidrRouteDest object is
not equal to ipCidrRouteDest."::={ ipCidrRouteEntry 2}-- The following convention is included for specification
-- of TOS Field contents. At this time, the Host Requirements-- and the Router Requirements documents disagree on the width-- of the TOS field. This mapping describes the Router-- Requirements mapping, and leaves room to widen the TOS field-- without impact to fielded systems.ipCidrRouteTos OBJECT-TYPESYNTAXInteger32(0..2147483647)MAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"The policy specifier is the IP TOS Field. The encoding
of IP TOS is as specified by the following convention.
Zero indicates the default path if no more specific
policy applies.
+-----+-----+-----+-----+-----+-----+-----+-----+
| | | |
| PRECEDENCE | TYPE OF SERVICE | 0 |
| | | |
+-----+-----+-----+-----+-----+-----+-----+-----+
IP TOS IP TOS
Field Policy Field Policy
Contents Code Contents Code
0 0 0 0 ==> 0 0 0 0 1 ==> 2
0 0 1 0 ==> 4 0 0 1 1 ==> 6
0 1 0 0 ==> 8 0 1 0 1 ==> 10
0 1 1 0 ==> 12 0 1 1 1 ==> 14
1 0 0 0 ==> 16 1 0 0 1 ==> 18
1 0 1 0 ==> 20 1 0 1 1 ==> 22
1 1 0 0 ==> 24 1 1 0 1 ==> 26
1 1 1 0 ==> 28 1 1 1 1 ==> 30"::={ ipCidrRouteEntry 3}ipCidrRouteNextHop OBJECT-TYPE
SYNTAXIpAddressMAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"On remote routes, the address of the next system en
route; Otherwise, 0.0.0.0."::={ ipCidrRouteEntry 4}ipCidrRouteIfIndex OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"The ifIndex value that identifies the local interface
through which the next hop of this route should be
reached."DEFVAL{0}
::={ ipCidrRouteEntry 5}ipCidrRouteType OBJECT-TYPESYNTAXINTEGER{other (1),-- not specified by this MIBreject (2),-- route that discards trafficlocal (3),-- local interfaceremote (4)-- remote destination}MAX-ACCESSread-create
STATUSdeprecatedDESCRIPTION"The type of route. Note that local(3) refers to a
route for which the next hop is the final destination;
remote(4) refers to a route for which the next hop is
not the final destination.
Routes that do not result in traffic forwarding or
rejection should not be displayed, even if the
implementation keeps them stored internally.
reject (2) refers to a route that, if matched,
discards the message as unreachable. This is used in
some protocols as a means of correctly aggregating
routes."::={ ipCidrRouteEntry 6}ipCidrRouteProto OBJECT-TYPESYNTAXINTEGER{other (1),-- not specified
local (2),-- local interfacenetmgmt (3),-- static routeicmp (4),-- result of ICMP Redirect-- the following are all dynamic-- routing protocolsegp (5),-- Exterior Gateway Protocolggp (6),-- Gateway-Gateway Protocolhello (7),-- FuzzBall HelloSpeak
rip (8),-- Berkeley RIP or RIP-IIisIs (9),-- Dual IS-ISesIs (10),-- ISO 9542ciscoIgrp (11),-- Cisco IGRPbbnSpfIgp (12),-- BBN SPF IGPospf (13),-- Open Shortest Path Firstbgp (14),-- Border Gateway Protocol
idpr (15),-- InterDomain Policy RoutingciscoEigrp (16)-- Cisco EIGRP}MAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"The routing mechanism via which this route was learned.
Inclusion of values for gateway routing protocols is
not intended to imply that hosts should support those
protocols."::={ ipCidrRouteEntry 7}ipCidrRouteAge OBJECT-TYPE
SYNTAXInteger32MAX-ACCESSread-onlySTATUSdeprecatedDESCRIPTION"The number of seconds since this route was last updated
or otherwise determined to be correct. Note that no
semantics of `too old' can be implied, except through
knowledge of the routing protocol by which the route
was learned."DEFVAL{0}::={ ipCidrRouteEntry 8}ipCidrRouteInfo OBJECT-TYPESYNTAXOBJECTIDENTIFIERMAX-ACCESSread-createSTATUSdeprecated
DESCRIPTION"A reference to MIB definitions specific to the
particular routing protocol that is responsible for
this route, as determined by the value specified in the
route's ipCidrRouteProto value. If this information is
not present, its value should be set to the OBJECT
IDENTIFIER { 0 0 }, which is a syntactically valid
object identifier, and any implementation conforming to
ASN.1 and the Basic Encoding Rules must be able to
generate and recognize this value."::={ ipCidrRouteEntry 9}ipCidrRouteNextHopAS OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"The Autonomous System Number of the Next Hop. The
semantics of this object are determined by the routing-
protocol specified in the route's ipCidrRouteProto
value. When this object is unknown or not relevant, its
value should be set to zero."DEFVAL{0}::={ ipCidrRouteEntry 10}ipCidrRouteMetric1 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"The primary routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ ipCidrRouteEntry 11}ipCidrRouteMetric2 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}
::={ ipCidrRouteEntry 12}ipCidrRouteMetric3 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ ipCidrRouteEntry 13}ipCidrRouteMetric4 OBJECT-TYPE
SYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ ipCidrRouteEntry 14}ipCidrRouteMetric5 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSdeprecated
DESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipCidrRouteProto
value. If this metric is not used, its value should be
set to -1."DEFVAL{-1}::={ ipCidrRouteEntry 15}ipCidrRouteStatus OBJECT-TYPESYNTAXRowStatusMAX-ACCESSread-createSTATUSdeprecatedDESCRIPTION"The row status variable, used according to row
installation and removal conventions."::={ ipCidrRouteEntry 16}
-- compliance statementsipForwardCompliance MODULE-COMPLIANCESTATUSdeprecatedDESCRIPTION"The compliance statement for SNMPv2 entities that
implement the ipForward MIB.
This compliance statement has been deprecated and
replaced with ipForwardFullCompliance and
ipForwardReadOnlyCompliance."MODULE-- this moduleMANDATORY-GROUPS{ ipForwardCidrRouteGroup }::={ ipForwardCompliances 1}-- units of conformanceipForwardCidrRouteGroup OBJECT-GROUPOBJECTS{ ipCidrRouteNumber,
ipCidrRouteDest, ipCidrRouteMask, ipCidrRouteTos,
ipCidrRouteNextHop, ipCidrRouteIfIndex,
ipCidrRouteType, ipCidrRouteProto, ipCidrRouteAge,
ipCidrRouteInfo,ipCidrRouteNextHopAS,
ipCidrRouteMetric1, ipCidrRouteMetric2,
ipCidrRouteMetric3, ipCidrRouteMetric4,
ipCidrRouteMetric5, ipCidrRouteStatus
}STATUSdeprecatedDESCRIPTION"The CIDR Route Table.
This group has been deprecated and replaced with
inetForwardCidrRouteGroup."
::={ ipForwardGroups 3}-- Obsoleted Definitions - ObjectsipForwardNumber OBJECT-TYPESYNTAXGauge32MAX-ACCESSread-onlySTATUSobsoleteDESCRIPTION"The number of current ipForwardTable entries that are
not invalid."::={ ipForward 1}-- IP Forwarding Table-- The IP Forwarding Table obsoletes and replaces the ipRoute-- Table current in MIB-I and MIB-II. It adds knowledge of-- the autonomous system of the next hop, multiple next hop-- support, and policy routing support.
ipForwardTable OBJECT-TYPESYNTAXSEQUENCEOF IpForwardEntry
MAX-ACCESSnot-accessibleSTATUSobsoleteDESCRIPTION"This entity's IP Routing table."REFERENCE"RFC 1213 Section 6.6, The IP Group"::={ ipForward 2}ipForwardEntry OBJECT-TYPESYNTAX IpForwardEntry
MAX-ACCESSnot-accessibleSTATUSobsoleteDESCRIPTION"A particular route to a particular destination, under a
particular policy."INDEX{
ipForwardDest,
ipForwardProto,
ipForwardPolicy,
ipForwardNextHop
}::={ ipForwardTable 1}
IpForwardEntry ::=SEQUENCE{
ipForwardDest IpAddress,
ipForwardMask IpAddress,
ipForwardPolicy Integer32,
ipForwardNextHop IpAddress,
ipForwardIfIndex Integer32,
ipForwardType INTEGER,
ipForwardProto INTEGER,
ipForwardAge Integer32,
ipForwardInfo OBJECTIDENTIFIER,
ipForwardNextHopAS Integer32,
ipForwardMetric1 Integer32,
ipForwardMetric2 Integer32,
ipForwardMetric3 Integer32,
ipForwardMetric4 Integer32,
ipForwardMetric5 Integer32}ipForwardDest OBJECT-TYPESYNTAXIpAddressMAX-ACCESSread-onlySTATUSobsoleteDESCRIPTION"The destination IP address of this route. An entry
with a value of 0.0.0.0 is considered a default route.
This object may not take a Multicast (Class D) address
value.
Any assignment (implicit or otherwise) of an instance
of this object to a value x must be rejected if the
bitwise logical-AND of x with the value of the
corresponding instance of the ipForwardMask object is
not equal to x."::={ ipForwardEntry 1}ipForwardMask OBJECT-TYPESYNTAXIpAddressMAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"Indicate the mask to be logical-ANDed with the
destination address before being compared to the value
in the ipForwardDest field. For those systems that do
not support arbitrary subnet masks, an agent constructs
the value of the ipForwardMask by reference to the IP
Address Class.
Any assignment (implicit or otherwise) of an instance
of this object to a value x must be rejected if the
bitwise logical-AND of x with the value of the
corresponding instance of the ipForwardDest object is
not equal to ipForwardDest."DEFVAL{ '00000000'H }-- 0.0.0.0::={ ipForwardEntry 2}-- The following convention is included for specification-- of TOS Field contents. At this time, the Host Requirements-- and the Router Requirements documents disagree on the width-- of the TOS field. This mapping describes the Router
-- Requirements mapping, and leaves room to widen the TOS field-- without impact to fielded systems.ipForwardPolicy OBJECT-TYPESYNTAXInteger32(0..2147483647)MAX-ACCESSread-onlySTATUSobsoleteDESCRIPTION"The general set of conditions that would cause
the selection of one multipath route (set of
next hops for a given destination) is referred
to as 'policy'.
Unless the mechanism indicated by ipForwardProto
specifies otherwise, the policy specifier is
the IP TOS Field. The encoding of IP TOS is as
specified by the following convention. Zero
indicates the default path if no more specific
policy applies.
+-----+-----+-----+-----+-----+-----+-----+-----+
| | | |
| PRECEDENCE | TYPE OF SERVICE | 0 |
| | | |
+-----+-----+-----+-----+-----+-----+-----+-----+
IP TOS IP TOS
Field Policy Field Policy
Contents Code Contents Code
0 0 0 0 ==> 0 0 0 0 1 ==> 2
0 0 1 0 ==> 4 0 0 1 1 ==> 6
0 1 0 0 ==> 8 0 1 0 1 ==> 10
0 1 1 0 ==> 12 0 1 1 1 ==> 14
1 0 0 0 ==> 16 1 0 0 1 ==> 18
1 0 1 0 ==> 20 1 0 1 1 ==> 22
1 1 0 0 ==> 24 1 1 0 1 ==> 26
1 1 1 0 ==> 28 1 1 1 1 ==> 30
Protocols defining 'policy' otherwise must either
define a set of values that are valid for
this object or must implement an integer-instanced
policy table for which this object's
value acts as an index."::={ ipForwardEntry 3}ipForwardNextHop OBJECT-TYPESYNTAXIpAddressMAX-ACCESSread-onlySTATUSobsoleteDESCRIPTION"On remote routes, the address of the next system en
route; otherwise, 0.0.0.0."::={ ipForwardEntry 4}ipForwardIfIndex OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-create
STATUSobsoleteDESCRIPTION"The ifIndex value that identifies the local interface
through which the next hop of this route should be
reached."DEFVAL{0}::={ ipForwardEntry 5}ipForwardType OBJECT-TYPESYNTAXINTEGER{other (1),-- not specified by this MIBinvalid (2),-- logically deletedlocal (3),-- local interface
remote (4)-- remote destination}MAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"The type of route. Note that local(3) refers to a
route for which the next hop is the final destination;
remote(4) refers to a route for which the next hop is
not the final destination.
Setting this object to the value invalid(2) has the
effect of invalidating the corresponding entry in the
ipForwardTable object. That is, it effectively
disassociates the destination identified with said
entry from the route identified with said entry. It is
an implementation-specific matter as to whether the
agent removes an invalidated entry from the table.
Accordingly, management stations must be prepared to
receive tabular information from agents that
corresponds to entries not currently in use. Proper
interpretation of such entries requires examination of
the relevant ipForwardType object."DEFVAL{ invalid }::={ ipForwardEntry 6}ipForwardProto OBJECT-TYPESYNTAXINTEGER{other (1),-- not specifiedlocal (2),-- local interfacenetmgmt (3),-- static route
icmp (4),-- result of ICMP Redirect-- the following are all dynamic-- routing protocolsegp (5),-- Exterior Gateway Protocolggp (6),-- Gateway-Gateway Protocolhello (7),-- FuzzBall HelloSpeakrip (8),-- Berkeley RIP or RIP-II
is-is (9),-- Dual IS-ISes-is (10),-- ISO 9542ciscoIgrp (11),-- Cisco IGRPbbnSpfIgp (12),-- BBN SPF IGPospf (13),-- Open Shortest Path Firstbgp (14),-- Border Gateway Protocolidpr (15)-- InterDomain Policy Routing
}MAX-ACCESSread-onlySTATUSobsoleteDESCRIPTION"The routing mechanism via which this route was learned.
Inclusion of values for gateway routing protocols is
not intended to imply that hosts should support those
protocols."::={ ipForwardEntry 7}ipForwardAge OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-onlySTATUSobsoleteDESCRIPTION"The number of seconds since this route was last updated
or otherwise determined to be correct. Note that no
semantics of `too old' can be implied except through
knowledge of the routing protocol by which the route
was learned."DEFVAL{0}::={ ipForwardEntry 8}ipForwardInfo OBJECT-TYPESYNTAXOBJECTIDENTIFIERMAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"A reference to MIB definitions specific to the
particular routing protocol that is responsible for
this route, as determined by the value specified in the
route's ipForwardProto value. If this information is
not present, its value should be set to the OBJECT
IDENTIFIER { 0 0 }, which is a syntactically valid
object identifier, and any implementation conforming to
ASN.1 and the Basic Encoding Rules must be able to
generate and recognize this value."::={ ipForwardEntry 9}ipForwardNextHopAS OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"The Autonomous System Number of the Next Hop. When
this is unknown or not relevant to the protocol
indicated by ipForwardProto, zero."DEFVAL{0}::={ ipForwardEntry 10}
ipForwardMetric1 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"The primary routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipForwardProto value.
If this metric is not used, its value should be set to
-1."DEFVAL{-1}::={ ipForwardEntry 11}ipForwardMetric2 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-create
STATUSobsoleteDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipForwardProto value.
If this metric is not used, its value should be set to
-1."DEFVAL{-1}::={ ipForwardEntry 12}ipForwardMetric3 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipForwardProto value.
If this metric is not used, its value should be set to
-1."DEFVAL{-1}::={ ipForwardEntry 13}ipForwardMetric4 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipForwardProto value.
If this metric is not used, its value should be set to
-1."DEFVAL{-1}::={ ipForwardEntry 14}ipForwardMetric5 OBJECT-TYPESYNTAXInteger32MAX-ACCESSread-createSTATUSobsoleteDESCRIPTION"An alternate routing metric for this route. The
semantics of this metric are determined by the routing-
protocol specified in the route's ipForwardProto value.
If this metric is not used, its value should be set to
-1."DEFVAL{-1}::={ ipForwardEntry 15}
-- Obsoleted Definitions - Groups-- compliance statementsipForwardOldCompliance MODULE-COMPLIANCESTATUSobsoleteDESCRIPTION"The compliance statement for SNMP entities that
implement the ipForward MIB."MODULE-- this moduleMANDATORY-GROUPS{ ipForwardMultiPathGroup }::={ ipForwardCompliances 2}ipForwardMultiPathGroup OBJECT-GROUPOBJECTS{ ipForwardNumber,
ipForwardDest, ipForwardMask, ipForwardPolicy,
ipForwardNextHop, ipForwardIfIndex, ipForwardType,
ipForwardProto, ipForwardAge, ipForwardInfo,
ipForwardNextHopAS,
ipForwardMetric1, ipForwardMetric2, ipForwardMetric3,
ipForwardMetric4, ipForwardMetric5
}STATUSobsoleteDESCRIPTION"IP Multipath Route Table."::={ ipForwardGroups 2}END